# 需求：将列表中的元素全部取出后，对所有元素求和

def func1(num1, num2):
    return num1+num2

# li = [1, 3, 5]
# num1 = 1
# num2 = 3
# num3 = 5
#
# value = func1(num1, num2, num3)
# print(value)


# # 不定长参数函数（加*参数名）
# def register(name, phone, *args):
#     # 把不确定的参数都存储在元组里args
#     print(args, type(args))
#     info = [name, phone]
#     for value in args:
#         info.append(value)
#     print(f"{name}注册成功")
#     print(f"打印{name}注册的个人信息：", info)
#
#
# # 调用不定长参数(加*参数名)
# # extra = ("深圳", "3", 15000, 25000, "深圳宝安洪浪北***")
# # register("B", '12345678912', *extra)
# # register("B", '12345678912', '深圳', 15000)
# # register("A", '1581111111')
# register("A", '1581111111', '地址：成都', '年龄：18', 1, 2)


# 不定长参数函数（加**参数名）
def register_yh(name, phone, **kwargs):
    # 把不确定的参数都存储在字典里kwargs
    print(kwargs, type(kwargs))
    info = {"name":name,"phone":phone}
    for key,value in kwargs.items():
        info[key]=value
    print(f"通过调用rigister_yh函数，完成{name}注册信息的填写")
    print(f"打印{name}注册的个人信息：", info)

# extra={'city': '深圳', 'workage': '3', 'xz': 15000, 'after_xz': 20000}
# register_yh("B", '12345678912', city1='深圳', workage3='3', xz=15000, after_xz=20000)
# print("abc")



# 不定长参数函数（*单独出现）  * 作为命名关键字参数的分隔符，后面属于命名关键字参数（参数名称限定的了）
def register_3(name, phone, *, city, work_age):
    print(name, phone, city, work_age)

#调用 不定长参数函数（*单独出现）
# register_3("MS219",'1111111111',city="深圳",work_age="3年")
register_3("MS219",'1111111111',city="深圳",work_age="3年")



def register_4(name, phone, *args, city, work_age):
    print(name,phone,args,city,work_age)

register_4("register_4",'1111111111', "坚果",city="深圳",work_age="3年")